package com.qixiaobao.system.service.impl;

import com.qixiaobao.system.domain.Dict;
import com.qixiaobao.system.mapper.DictMapper;
import com.qixiaobao.system.service.IDictService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @Description 字典 业务层处理
 * @Author yangxm
 * @Date 2025/6/18 8:58
 */
@Service
public class DictServiceImpl implements IDictService {

    @Autowired
    private DictMapper dictMapper;

    /**
     * @Description 查询供应商全称
     * @Author yangxm
     * @Date 2025/6/18 9:00
     * @param noPermissionSupplyIdList
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectSupplyNameSelect(List<Long> noPermissionSupplyIdList) {
        return dictMapper.selectSupplyNameSelect(noPermissionSupplyIdList);
    }

    /**
     * @Description 保单管理-待生效、在保中、已失效、退保已失效，所属供应商下拉
     * @Author yangxm
     * @Date 2025/6/18 9:01
     * @param gurantStatus
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectBelongToSupplySelect(String gurantStatus) {
        return dictMapper.selectBelongToSupplySelect(gurantStatus);
    }

    /**
     * @Description 供应商简称下拉
     * @Author yangxm
     * @Date 2025/6/18 9:01
     * @param supplyNameList
     * @param noPermissionSupplyIdList
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectSupplyShortNameSelect(List<String> supplyNameList, List<Long> noPermissionSupplyIdList) {
        return dictMapper.selectSupplyShortNameSelect(supplyNameList, noPermissionSupplyIdList);
    }

    /**
     * @Description 权限字典
     * @Author yangxm
     * @Date 2025/6/18 9:01
     * @param type
     * @param noPermissionSupplyIdList
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectPermissionDictListByType(String type, List<Long> noPermissionSupplyIdList) {
        return dictMapper.selectPermissionDictListByType(type, noPermissionSupplyIdList);
    }

    /**
     * @Description 匹配后供应商简称下拉
     * @Author yangxm
     * @Date 2025/6/18 9:01
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectToSupplyShortNameSelect() {
        return dictMapper.selectToSupplyShortNameSelect();
    }

    /**
     * @Description 增减员记录-所属供应商下拉
     * @Author yangxm
     * @Date 2025/6/18 9:01
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectAddminusBelongToSupplySelect() {
        return dictMapper.selectAddminusBelongToSupplySelect();
    }

    /**
     * @Description 根据字典类型查询字典
     * @Author yangxm
     * @Date 2025/6/24 17:06
     * @param type
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectDictListByType(String type) {
        return dictMapper.selectDictListByType(type);
    }

    /**
     * @Description 付款单位下拉
     * @Author yangxm
     * @Date 2025/6/27 9:30
     * @param noPermissionSupplyIdList
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectPayCompanySelect(List<Long> noPermissionSupplyIdList) {
        return dictMapper.selectPayCompanySelect(noPermissionSupplyIdList);
    }

    /**
     * @Description 非直投结算管理，所属供应商下拉
     * @Author yangxm
     * @Date 2025/6/27 9:37
     * @return java.util.List<com.qixiaobao.nondirect.invoice.domain.domain.Dict>
     */
    @Override
    public List<Dict> selectNonDirectBelongToSupplySelect() {
        return dictMapper.selectNonDirectBelongToSupplySelect();
    }
}
